perm filename CYCDRB.LAP[1,LMM] blob sn#034842 filedate 1973-04-12 generic text, type T, neo UTF8
(LAP PATMATCH SUBR) 
	(CALL 0 (E FACES)) 
	(CALL 1 (E REEDITFACE)) 
	(PUSH P (SPECIAL PATS)) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(HLRZ@ 1 -2 P) 
	(MOVEM 1 (SPECIAL CURPAT)) 
	(HLRZ@ 1 -2 P) 
	(CALL 1 (E PATFACE)) 
	(MOVE 2 1) 
	(MOVE 1 -1 P) 
	(CALL 2 (E FACEMATCH)) 
	(MOVEM 1 0 P) 
	(JUMPE 1 TAG2) 
	(HLRZ@ 1 -2 P) 
	(CALL 1 (E PATNODFC)) 
	(MOVE 2 1) 
	(MOVE 1 0 P) 
	(CALL 2 (E NODEPICK1)) 
	(MOVEM 1 0 P) 
	(CALL 1 (E NODEPICK2)) 
	(MOVEM 1 0 P) 
	(JUMPE 1 TAG8) 
	(MOVE 1 (SPECIAL CURPAT)) 
	(CALL 1 (E PATPOINTS)) 
	(MOVE 2 1) 
	(MOVE 1 0 P) 
	(CALL 2 (E PATPTS)) 
	(MOVEM 1 (SPECIAL PATSELECT)) 
	(JRST 0 TAG3) 
	(JUMPN 1 TAG7) 
TAG8 
TAG7 
TAG2 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(JUMPN 1 TAG1) 
TAG3 	(SUB P (C 0 0 3 3)) 
	(POPJ P) 
	NIL 

(LAP REEDITFACE SUBR) 
	(PUSH P 1) 
	(CALL 1 (E CADR)) 
	(PUSH P 1) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(HRRZ@ 1 -4 P) 
	(CALL 1 (E CADR)) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 1 -2 P) 
	(JUMPE 1 TAG4) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -1 P) 
	(PUSH P (C 0 0 TAG15 0)) 
	(PUSH P -1 P) 
	(CALL 1 (E NCONS)) 
	(CALL 1 (E NCONS)) 
	(PUSH P 1) 
	(MOVNI 6 2) 
	(JCALL 14 (E NCONC)) 
TAG15 	(MOVEM 1 0 P) 
TAG2 
TAG3 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 1 0 P) 
	(MOVEM 1 -3 P) 
	(SUB P (C 0 0 3 3)) 
	(MOVEM 1 -1 P) 
	(MOVE 1 -2 P) 
	(JUMPE 1 TAG7) 
TAG5 	(HRRZ@ 1 -2 P) 
	(JUMPE 1 TAG7) 
	(HRRZ@ 1 -2 P) 
	(HLRZ@ 1 1) 
	(HLRZ@ 2 -2 P) 
	(CAMN 2 1) 
	(JRST 0 TAG6) 
	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(HRRZ@ 1 0 P) 
	(MOVEM 1 0 P) 
	(JRST 0 TAG5) 
TAG6 	(HRRZ@ 1 -2 P) 
	(HRRZ@ 1 1) 
	(HRRM@ 1 -2 P) 
	(HRRZ@ 1 0 P) 
	(HLRZ@ 1 1) 
	(HLRZ@ 2 0 P) 
	(HRRM@ 2 1) 
	(HRRZ@ 1 0 P) 
	(HLRZ@ 1 1) 
	(HRLM@ 1 0 P) 
	(HRRZ@ 1 0 P) 
	(HRRZ@ 1 1) 
	(HRRM@ 1 0 P) 
	(JRST 0 TAG5) 
TAG7 	(MOVE 1 -1 P) 
	(CALL 1 (E NCONS)) 
	(MOVE 2 -3 P) 
	(CALL 2 (E XCONS)) 
	(HLRZ@ 2 -4 P) 
	(SUB P (C 0 0 5 5)) 
	(JCALL 2 (E XCONS)) 
	NIL 

(LAP FACES SUBR) 
	(CLEARM 1 (SPECIAL FACE)) 
	(MOVEI 1 (QUOTE 0)) 
	(MOVEM 1 (SPECIAL FACENUM)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(MOVEI 2 (QUOTE -2)) 
	(MOVE 1 (SPECIAL NMX)) 
	(CALL 2 (E *PLUS)) 
	(PUSH P 1) 
	(MOVEI 1 (QUOTE 1)) 
	(MOVEM 1 -1 P) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 2 -1 P) 
	(MOVE 1 -2 P) 
	(CALL 2 (E *GREAT)) 
	(JUMPN 1 TAG4) 
	(MOVE 2 -2 P) 
	(MOVE 1 (SPECIAL NMX)) 
	(CALL 2 (E *DIF)) 
	(CALL 1 (E ADD1)) 
	(MOVEI 5 (QUOTE 1)) 
	(MOVE 4 1) 
	(MOVEI 3 (QUOTE NIL)) 
	(MOVE 2 -2 P) 
	(MOVE 1 2) 
	(CALL 5 (E FACEF1)) 
TAG2 
TAG3 	(MOVEI 2 (QUOTE 1)) 
	(MOVE 1 -2 P) 
	(CALL 2 (E *PLUS)) 
	(MOVEM 1 -2 P) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 1 0 P) 
	(SUB P (C 0 0 2 2)) 
	(CALL 0 (E EDITFACE)) 
	(MOVE 1 (SPECIAL FACE)) 
	(SUB P (C 0 0 1 1)) 
	(POPJ P) 
	NIL 

(LAP FACEF1 SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(PUSH P 3) 
	(PUSH P 4) 
	(PUSH P 5) 
	(MOVE 1 2) 
	(CALL 1 (E CONN)) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 1 -1 P) 
	(JUMPE 1 TAG3) 
	(HLRZ@ 1 1) 
	(MOVEM 1 0 P) 
	(CAME 1 -6 P) 
	(JRST 0 TAG7) 
	(MOVE 2 -4 P) 
	(MOVE 1 -6 P) 
	(CALL 2 (E OTFACE)) 
	(JRST 0 TAG6) 
TAG7 	(MOVE 2 -4 P) 
	(CALL 2 (E MEMQ)) 
	(JUMPE 1 TAG8) 
	(JRST 0 TAG6) 
TAG8 	(MOVE 1 -2 P) 
	(CAME 1 -3 P) 
	(JRST 0 TAG9) 
	(JRST 0 TAG6) 
TAG9 	(MOVE 2 -4 P) 
	(MOVE 1 0 P) 
	(CALL 2 (E CONS)) 
	(PUSH P 1) 
	(MOVE 1 -3 P) 
	(CALL 1 (E ADD1)) 
	(MOVE 5 1) 
	(MOVE 4 -4 P) 
	(POP P 3) 
	(MOVE 2 0 P) 
	(MOVE 1 -6 P) 
	(CALL 5 (E FACEF1)) 
TAG10 
TAG6 	(HRRZ@ 1 -1 P) 
	(MOVEM 1 -1 P) 
	(JRST 0 TAG1) 
TAG3 	(MOVEI 1 (QUOTE NIL)) 
	(SUB P (C 0 0 7 7)) 
	(POPJ P) 
	NIL 

(LAP OTFACE SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(MOVE 1 2) 
	(CALL 1 (E LENGTH)) 
	(CAIN 1 (QUOTE 1)) 
	(JRST 0 TAG2) 
	(MOVE 2 0 P) 
	(MOVE 1 -1 P) 
	(CALL 2 (E CONS)) 
	(MOVEM 1 -1 P) 
	(CALL 1 (E DUPFACE)) 
	(JUMPN 1 TAG2) 
	(MOVE 1 (SPECIAL FACENUM)) 
	(CALL 1 (E ADD1)) 
	(MOVEM 1 (SPECIAL FACENUM)) 
	(MOVE 1 -1 P) 
	(CALL 1 (E LENGTH)) 
	(PUSH P 1) 
	(MOVE 1 -2 P) 
	(CALL 1 (E NCONS)) 
	(POP P 2) 
	(CALL 2 (E XCONS)) 
	(MOVE 2 (SPECIAL FACENUM)) 
	(CALL 2 (E XCONS)) 
	(MOVE 2 (SPECIAL FACE)) 
	(CALL 2 (E CONS)) 
	(MOVEM 1 (SPECIAL FACE)) 
TAG2 	(MOVEI 1 (QUOTE NIL)) 
	(SUB P (C 0 0 2 2)) 
	(POPJ P) 
	NIL 

(LAP DUPFACE SUBR) 
	(PUSH P 1) 
	(PUSH P (SPECIAL FACE)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 1 -2 P) 
	(JUMPE 1 TAG4) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -1 P) 
	(HRRZ@ 2 1) 
	(HRRZ@ 2 2) 
	(HLRZ@ 2 2) 
	(MOVE 1 -3 P) 
	(CALL 2 (E SETEQ)) 
	(MOVEM 1 0 P) 
	(JUMPE 1 TAG10) 
	(JRST 0 TAG5) 
TAG10 
TAG2 
TAG3 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 1 0 P) 
TAG5 	(SUB P (C 0 0 4 4)) 
	(POPJ P) 
	NIL 

(LAP SETEQ SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(CALL 1 (E LENGTH)) 
	(PUSH P 1) 
	(MOVE 1 -1 P) 
	(CALL 1 (E LENGTH)) 
	(POP P 2) 
	(CAME 1 2) 
	(JRST 0 TAG2) 
	(MOVE 1 -1 P) 
	(CALL 1 (E LENGTH)) 
	(MOVE 2 0 P) 
	(PUSH P 1) 
	(MOVE 1 -2 P) 
	(CALL 2 (E UNION)) 
	(CALL 1 (E LENGTH)) 
	(POP P 2) 
	(CAMN 1 2) 
	(JRST 0 TAG1) 
TAG2 	(TDZA 1 1) 
TAG1 	(MOVEI 1 (QUOTE T)) 
	(SUB P (C 0 0 2 2)) 
	(POPJ P) 
	NIL 

(LAP SUBFUN1EDITFACE SUBR) 
	(PUSH P 2) 
	(CALL 1 (E FACESIZE)) 
	(EXCH 1 0 P) 
	(CALL 1 (E FACESIZE)) 
	(POP P 2) 
	(JCALL 2 (E *LESS)) 
	NIL 

(LAP EDITFACE SUBR) 
	(MOVEI 2 (QUOTE SUBFUN1EDITFACE)) 
	(MOVE 1 (SPECIAL FACE)) 
	(CALL 2 (E SORT)) 
	(MOVEM 1 (SPECIAL FACE)) 
	(MOVE 2 1) 
	(MOVEI 1 (QUOTE FACESIZE)) 
	(CALL 2 (E MAPCAR)) 
	(PUSH P 1) 
	(CALL 1 (E LENGTH)) 
	(PUSH P 1) 
	(MOVE 1 (SPECIAL FACE)) 
	(CALL 1 (E NCONS)) 
	(MOVE 2 -1 P) 
	(CALL 2 (E XCONS)) 
	(POP P 2) 
	(CALL 2 (E XCONS)) 
	(MOVEM 1 (SPECIAL FACE)) 
	(SUB P (C 0 0 1 1)) 
	(POPJ P) 
	NIL 

(LAP FACESIZE SUBR) 
	(CALL 1 (E CADDR)) 
	(JCALL 1 (E LENGTH)) 
	NIL 

(LAP FACEMATCH SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(HLRZ@ 2 2) 
	(HLRZ@ 1 1) 
	(CALL 2 (E *LESS)) 
	(JUMPN 1 TAG4) 
	(HRRZ@ 1 -6 P) 
	(HLRZ@ 1 1) 
	(MOVEM 1 0 P) 
	(HRRZ@ 1 -5 P) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -1 P) 
	(HRRZ@ 1 -6 P) 
	(CALL 1 (E CADR)) 
	(MOVEM 1 -2 P) 
	(HRRZ@ 1 -5 P) 
	(CALL 1 (E CADR)) 
	(MOVEM 1 -3 P) 
TAG1 	(HLRZ@ 2 -1 P) 
	(HLRZ@ 1 0 P) 
	(CALL 2 (E *LESS)) 
	(JUMPN 1 TAG4) 
	(HLRZ@ 1 -1 P) 
	(HLRZ@ 2 0 P) 
	(CAMN 2 1) 
	(JRST 0 TAG2) 
	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(HRRZ@ 1 0 P) 
	(MOVEM 1 0 P) 
	(JUMPE 1 TAG4) 
	(JRST 0 TAG1) 
TAG2 	(HLRZ@ 2 -2 P) 
	(HLRZ@ 1 -3 P) 
	(HLRZ@ 1 1) 
	(CALL 2 (E CONS)) 
	(MOVE 2 -4 P) 
	(CALL 2 (E CONS)) 
	(MOVEM 1 -4 P) 
	(HRRZ@ 1 -3 P) 
	(MOVEM 1 -3 P) 
	(HRRZ@ 1 -1 P) 
	(MOVEM 1 -1 P) 
	(JUMPN 1 TAG1) 
	(MOVE 1 -4 P) 
	(JRST 0 TAG3) 
TAG4 	(MOVEI 1 (QUOTE NIL)) 
TAG3 	(SUB P (C 0 0 7 7)) 
	(POPJ P) 
	NIL